package br.com.locautowebbd.modelo;

import br.com.locautowebbd.util.RepositorioException;


public class CadastroModelo {
	private RepositorioModelos modelos;

	public CadastroModelo(RepositorioModelos rep) {
		if (rep == null) {
			throw new IllegalArgumentException("Argumento lista modelos nula");
		}
		this.modelos = rep;
	}

	public void atualizar(Modelo modelo) throws ModeloInexistenteException,
			RepositorioException {
		modelos.atualizar(modelo);
	}

	public void inserir(Modelo novoModelo) throws RepositorioException, ModeloExistenteException{
            int codigo = novoModelo.getCodigo();
		if (!modelos.existe(codigo)){
			modelos.inserir(novoModelo);
		} else {
			throw new ModeloExistenteException(novoModelo.getCodigo());
		}
	}

	public void remover(int codigo) throws ModeloInexistenteException,
			RepositorioException {
		modelos.remover(codigo);
	}

	public Modelo procurar(int codigo) throws ModeloInexistenteException,
			RepositorioException {
		return modelos.procurar(codigo);
	}
}